TEAM IRON GIANT 1.0

Objective

The robot is required to move to five specified points within the course while picking up as many golf balls as possible and returning them to two separate chutes located near the beginning of the course.

 

http://coecsl.ece.illinois.edu/ge423/spring15/Group5RyanNolanBenjaminBrandon/img/Untitled.png

 

 

 

 

 

Path Planning

In the field of path planning, there exist many different approaches and algorithms in order to find the “right path”. We decided to use the A* algorithm to create the fastest path with respect to the current goal.

We used Manhattan distance to calculate the cost of the path planning in order to avoid diagonal movements and running into obstacles. The position of the robot itself is calculated by merging the data from a camera system that was set up around the course with the dead reckoning data from the robot sensors using Kalman Filtering. The A* algorithm is called each time a target location has been reached or when a golf ball has been successfully retrieved. Furthermore, every time a new obstacle is located, A* is run when the obstacle is within the current path. This process repeats until the robot has reached the final destination.

 

 

 

Obstacle Avoidance

In order to locate obstacles, we used the data provided by the LADAR sensor mounted on the top of the robot. The data acquired gave us precise information on the distance of any object located in the range of the sensor. Knowing that the robot’s movement will be constrained within the walls of the course, we filtered every LADAR data that represented an x/y-coordinate within the course because this means that an obstacle was “hit” by the laser beam of the respective angular increment. To compensate for erroneous data, we split the course up in an 11 by 12 grid of tiles as indicated on the left. If the LADAR detects something within one of these tiles, we increased a tally counter within this tile. Once a certain threshold has been reached, the tile is declared to be an obstacle as visualized on the left side.

 

 

 

 

 

 

 

Ball Collection

How does the robot know where the golf balls are? We used the video input from the camera and filtered the incoming data to register pixels in the HSV spectrum of the orange and blue golf balls. In order to obtain the specific spectra, we took pictures of the golf balls prior to the contest and adjusted the thresholds of the computer vision algorithm accordingly. As for the actual ball retrieval, the robot abandons the current path once a certain threshold of orange or blue pixels is exceeded. Then the centroid of the largest detected golf ball is calculated and the location of this centroid is fed back to the motor controller and a feedback control system is used to steer the robot towards the golf ball. At a certain distance, the golf ball disappears under the camera’s field of view and simple open loop control is utilized to make the robot go just far enough to collect the golf ball.

A simple gripper/trapper design is utilized to securely retrieve the golf balls. Once the robot is close enough, the front door of the gripper is opened and the inner flap is actuated in order to make the golf ball goes into the orange or blue compartment.

The one gate system simplified the code for control, and allowed us to more consistently collect the golf balls.

 

 

 

 

LabVIEW Interface

A LabVIEW interface was used to visualize the course map and the data obtained from the sensors. The interface depicted the actual course with grid spaces and the robot’s trail of past positions including the current positions. It also displayed the location of collected golf balls and the location of the identified obstacles. The LabVIEW application communicates with the robot via a wireless TCP/IP connection to provide real-time data.

 

 

 

 

 

The Team

MAXIMILIAN SIEB

·        Obstacle Detection

·        System Integration and Trouble Shooting

·        Ball Detection

 

 

 

 

ALEX KITE

·        Path Planning

·        Ball Collection

·        System Integration and Trouble Shooting

 

 

 

 

SEAN KELLEHER

·        Path Planning

·        CAD Design

·        System Integration

 

 

 

https://scontent.xx.fbcdn.net/v/t1.0-9/12472610_10208540863746629_3587828834485941580_n.jpg?oh=4f545bb97b4e4a7b6739427aab87cb64&oe=57D531CDDANI LARKIN

·        LabVIEW Interface

·        Testing